# -*- coding: utf-8 -*-
"""
@Time ： 2025/5/11 10:46
@Auth ： 九问
@File ：run.py
@IDE ：PyCharm
@Email : 2750826557@qq.com
"""
import os
import shutil
import time
import pytest


def run_tests():
    """
    运行测试并生成报告
    """
    # 设置固定目录路径
    current_dir = os.path.dirname(os.path.abspath(__file__))
    test_dir = os.path.join(current_dir, 'testcases')
    report_dir = os.path.join(current_dir, 'reports')
    temp_dir = os.path.join(current_dir, 'temps')
    
    # 确保目录存在
    os.makedirs(temp_dir, exist_ok=True)
    os.makedirs(report_dir, exist_ok=True)
    
    # 构建pytest参数
    pytest_args = [
        test_dir,
        '--alluredir', temp_dir,
        '-v'
    ]
    
    # 运行测试
    result = pytest.main(pytest_args)
    
    # 移动日志
    log_dir = os.path.join(current_dir, 'logs')
    os.makedirs(log_dir, exist_ok=True)
    log_file = os.path.join(log_dir, 'pytest.log')
    if os.path.exists(log_file):
        shutil.move(log_file, os.path.join(log_dir, f"pytest_{int(time.time())}.log"))
    
    return result


if __name__ == '__main__':
    run_tests()
